home *** CD-ROM | disk | FTP | other *** search
Text File | 1998-10-27 | 6.9 KB | 248 lines | [TEXT/ScoM] |
- ; Here is some fun we did with Janusz Podrazik in Dec 1996 when improvising
- ; together, starting with the J.S.Bach Praeludium I as a source and turning it
- ; into something else. Piano sound was used.
-
- ; Appendix A 'Ample'
-
- ; J.S.Bach Wohltemperierters Klavier, Erste Teil, Praeludium I.
-
- (setq rh
- '(([ 1/8 = 1/16 g4 c5 e5 g4 c5 e5 ])
- ([ 1/8 = 1/16 a4 d5 f5 a4 d5 f5 ])
- ([ 1/8 = 1/16 g4 d5 f5 g4 d5 f5 ])
- ([ 1/8 = 1/16 g4 c5 e5 g4 c5 e5 ])
- ([ 1/8 = 1/16 a4 e5 a5 a4 e5 a5 ]) ; 5
- ([ 1/8 = 1/16 f#4 a4 d5 f#4 a4 d5 ])
- ([ 1/8 = 1/16 g4 d5 g5 g4 d5 g5 ])
- ([ 1/8 = 1/16 e4 g4 c5 e4 g4 c5 ])
- ([ 1/8 = 1/16 e4 g4 c5 e4 g4 c5 ])
- ([ 1/8 = 1/16 d4 f#4 c5 d4 f#4 c5 ]) ; 10
- ([ 1/8 = 1/16 d4 g4 b4 d4 g4 b4 ])
- ([ 1/8 = 1/16 e4 g4 c#5 e4 g4 c#5 ])
- ([ 1/8 = 1/16 d4 a4 d5 d4 a4 d5 ])
- ([ 1/8 = 1/16 d4 f4 b4 d4 f4 b4 ])
- ([ 1/8 = 1/16 c4 g4 c5 c4 g4 c5 ]) ; 15
- ([ 1/8 = 1/16 a3 c4 f4 a3 c4 f4 ])
- ([ 1/8 = 1/16 a3 c4 f4 a3 c4 f4 ])
- ([ 1/8 = 1/16 g3 b3 f4 g3 b3 f4 ])
- ([ 1/8 = 1/16 g3 c4 e4 g3 c4 e4 ])
- ([ 1/8 = 1/16 b&3 c4 e4 b&3 c4 e4 ]) ; 20
- ([ 1/8 = 1/16 a3 c4 e4 a3 c4 e4 ])
- ([ 1/8 = 1/16 a3 c4 e&4 a3 c4 e&4 ])
- ([ 1/8 = 1/16 b3 c4 d4 b3 c4 d4 ])
- ([ 1/8 = 1/16 g3 b3 d4 g3 b3 d4 ])
- ([ 1/8 = 1/16 g3 c4 e4 g3 c4 e4 ]) ; 25
- ([ 1/8 = 1/16 g3 c4 f4 g3 c4 f4 ])
- ([ 1/8 = 1/16 g3 b3 f4 g3 b3 f4 ])
- ([ 1/8 = 1/16 a3 c4 f#4 a3 c4 f#4 ])
- ([ 1/8 = 1/16 g3 c4 g4 g3 c4 g4 ])
- ([ 1/8 = 1/16 g3 c4 f4 g3 c4 f4 ]) ; 30
- ([ 1/8 = 1/16 g3 b3 f4 g3 b3 f4 ])
- ([ 1/8 = 1/16 g3 b&3 e4 g3 b&3 e4 ])
- (1/8 = 1/16 f3 a3 c4 f4 c4 a3 c4 a3 f3 a3 f3 d3 f3 d3)
- (1/8 = 1/16 g4 b4 d5 f5 d5 b4 d5 b4 g4 b4 d4 f4 e4 d4)
- (1/1 e4_g4_c5)) ; 35
- lh1
- '(([ 1/16 = 7/16 e4 ])
- ([ 1/16 = 7/16 d4 ])
- ([ 1/16 = 7/16 d4 ])
- ([ 1/16 = 7/16 e4 ])
- ([ 1/16 = 7/16 e4 ]) ; 5
- ([ 1/16 = 7/16 d4 ])
- ([ 1/16 = 7/16 d4 ])
- ([ 1/16 = 7/16 c4 ])
- ([ 1/16 = 7/16 c4 ])
- ([ 1/16 = 7/16 a3 ]) ; 10
- ([ 1/16 = 7/16 b3 ])
- ([ 1/16 = 7/16 b&3 ])
- ([ 1/16 = 7/16 a3 ])
- ([ 1/16 = 7/16 a&3 ])
- ([ 1/16 = 7/16 g3 ]) ; 15
- ([ 1/16 = 7/16 f3 ])
- ([ 1/16 = 7/16 f3 ])
- ([ 1/16 = 7/16 d3 ])
- ([ 1/16 = 7/16 e3 ])
- ([ 1/16 = 7/16 g3 ]) ; 20
- ([ 1/16 = 7/16 f3 ])
- ([ 1/16 = 7/16 c3 ])
- ([ 1/16 = 7/16 f3 ])
- ([ 1/16 = 7/16 f3 ])
- ([ 1/16 = 7/16 e3 ]) ; 25
- ([ 1/16 = 7/16 d3 ])
- ([ 1/16 = 7/16 d3 ])
- ([ 1/16 = 7/16 e&3 ])
- ([ 1/16 = 7/16 e3 ])
- ([ 1/16 = 7/16 d3 ]) ; 30
- ([ 1/16 = 7/16 d3 ])
- ([ 1/16 = 7/16 c3 ])
- (1/16 = 15/16 c3)
- (1/16 = 15/16 b2)
- (1/1 c3)) ; 35
- lh2
- '((1/2 c4 c4)
- (1/2 c4 c4)
- (1/2 b3 b3)
- (1/2 c4 c4)
- (1/2 c4 c4) ; 5
- (1/2 c4 c4)
- (1/2 b3 b3)
- (1/2 b3 b3)
- (1/2 a3 a3)
- (1/2 d3 d3) ; 10
- (1/2 g3 g3)
- (1/2 g3 g3)
- (1/2 f3 f3)
- (1/2 f3 f3)
- (1/2 e3 e3) ; 15
- (1/2 e3 e3)
- (1/2 d3 d3)
- (1/2 g2 g2)
- (1/2 c3 c3)
- (1/2 c3 c3) ; 20
- (1/2 f2 f2)
- (1/2 f#2 f#2)
- (1/2 a&2 a&2)
- (1/2 g2 g2)
- (1/2 g2 g2) ; 25
- (1/2 g2 g2)
- (1/2 g2 g2)
- (1/2 g2 g2)
- (1/2 g2 g2)
- (1/2 g2 g2) ; 30
- (1/2 g2 g2)
- (1/2 c2 c2)
- (1/1 c2)
- (1/1 c2)
- (1/1 c2))) ; 35
-
- (setq
- velocity-lh
- (append
- (mapcar (function (lambda (x y)
- (symbol-transpose x y))) (gen-cresc-dim 0 6 11)
- (gen-repeat 11 (list (gen-repeat 4 '(48 47 52)))))
- (mapcar (function (lambda (x y)
- (symbol-transpose x y))) (gen-dim 0 -8 4)
- (gen-repeat 4 (list (gen-repeat 4 '(48 47 52)))))
- (mapcar (function (lambda (x y)
- (symbol-transpose x y))) (gen-dim 0 -12 9)
- (gen-repeat 9 (list (gen-repeat 4 '(46 46 49)))))
- (mapcar (function (lambda (x y)
- (symbol-transpose x y))) (gen-cresc 0 23 5)
- (gen-repeat 5 (list (gen-repeat 4 '(42 42 44)))))
- (mapcar (function (lambda (x y)
- (symbol-transpose x y))) (gen-dim 25 0 3)
- (gen-repeat 3 (list (gen-repeat 4 '(43 43 44)))))
- (gen-repeat 2 (list (gen-repeat 4 '(44 44 44))))
- '((48)))
-
- velocity-rh1
- (mapcar 'list
- (append
- (gen-cresc-dim 54 60 15)
- (gen-dim 54 44 9)
- (gen-cresc 54 74 5)
- (gen-dim 71 44 5)
- '(48)))
-
- velocity-rh2
- (mapcar 'list
- (append
- (gen-cresc-dim 52 58 15)
- (gen-dim 52 45 9)
- (gen-cresc 54 74 5)
- (gen-dim 69 44 5)
- '(48))))
-
- (setq
- tempo-value
- (flatten
- (list
- (gen-repeat 15 '(61))
- (gen-repeat 15 '(60))
- (gen-repeat 2 '(58))
- (gen-repeat 1 '(56))
- (gen-repeat 12 '(55))
- (gen-dim 45 20 4)
- '50))
-
- tempo
- (flatten
- (list
- (gen-repeat 33 '(1/1))
- (gen-repeat 16 '(1/16))
- '1/1)))
-
- ; --------------- SCORE
-
- (setq op.31-Var-für-Orch '(1 7 9 6 8 0 5 4 10 11 2 3))
- (setq interval-list (get-interval :all op.31-Var-für-Orch))
- (setq interval-lists (rotate-fc 10 interval-list))
-
- (def-symbol
- rhand (s-subtract 0.25 '(r r c r r) '(2 3 2 1 2) '(2 3 4 2 2)
- (g-cluster 0.34 'r 0 0 0 6))
- lhand1 (ambitus :invert
- -10 10 (i-process 1 -5 43
- (g-chord 0.25 1 4 0 0 interval-lists)))
- lhand2 '((a)))
-
- (def-length
- rhand (ample :length rh)
- lhand1 (ample :length lh1)
- lhand2 (ample :length lh2))
-
- (def-velocity
- rhand velocity-lh
- lhand1 velocity-rh1
- lhand2 velocity-rh2)
-
- (def-duration
- rhand (append
- (p-replace-section
- nil '(3 6 10 13) '1/128
- (gen-repeat 4 (g-integer 1 15))
- (subseq (length-of rhand) 0 15))
- (p-replace-section
- nil '(3 6 10 13) '1/64
- (gen-repeat 4 (g-integer 1 14))
- (subseq (length-of rhand) 15 29))
- (subseq (length-of rhand) 29 35))
- lhand1 (length-of lhand1)
- lhand2 (length-of lhand2))
-
- (defun make-random-zones (n seed)
- (let (collect)
- (init-rnd seed)
- (dotimes (i n)
- (push (pick-random '(2/1 1/1 1/2 1/4) nil) collect))
- collect))
-
- (def-zone
- tempo tempo
- default (make-random-zones 32 0.123)
- )
-
- (def-channel
- rhand 1
- lhand1 2
- lhand2 3
- )
-
- (def-tonality
- default
- (fold-tonality 'a 5 (symbols-to-tonality
- symbols '(a b c d e f g h -b -c -d)
- transpose '((0 2 4 6) (2 4 0 6))
- mapping (activate-tonality (messiaen3 c 5))))
- )
-
- (def-tempo tempo-value)
-
- (midiport :printer)
-
- (compile-instrument-p
- "ccl;output:" "JSB_WK_I_P1-Var"
- rhand lhand1 lhand2)
-
-